home *** CD-ROM | disk | FTP | other *** search
/ PC Player 2004 May / pc player 2004-05.iso / Demos / FarCry / Data1.cab / _3424523F81C94477851AF8A3DED23EB6 < prev    next >
Encoding:
Text File  |  2004-01-06  |  1.3 KB  |  42 lines

  1. // ===============================================================
  2. // Vertex Program: 
  3. // Description: 
  4. // Last Update: 14/08/2003
  5. // Coder: Andrey Honich
  6. // ===============================================================
  7.  
  8.       #include "../CGVPMacro.csi"
  9.  
  10.       Noise
  11.       Projected
  12.  
  13.       Param4f ( Name = NoisePos Comp 'time 0.8' Comp 'time 0.6' Comp = 0 User 'WaveAmplitude') // xy = wavepos, z = 0, w = amplitude
  14.  
  15.       MainInput { VIEWPROJ_MATRIX, uniform float4 NoisePos, CAMERA_POS, uniform float4 TexShiftRipple, uniform float4x4 TexProjMatrix, uniform float4 pg[66] : register(c30) }
  16.       DeclarationsScript
  17.       {
  18.         IN_T0_C0
  19.         OUT_T0_T1_T2_T3_C0
  20.       }
  21.       PositionScript = PosWaterDeform
  22.       CoreScript
  23.       {
  24.         float4 vTex = IN.TexCoord0;
  25.         OUT.Tex0.xy = vTex.xy + TexShiftRipple.xy;
  26.         OUT.Tex3.xy = vTex.xy + TexShiftRipple.xy;
  27.         
  28.         float4 vProjTex = mul(TexProjMatrix, vPos);
  29.         vProjTex.xy = vProjTex.xy + fNoise * CameraPos.w;
  30.   #ifdef PROJECTEDENVBUMP
  31.         OUT.Tex1 = vProjTex;
  32.   #endif        
  33.   #ifdef OTHER
  34.         OUT.Tex1.xy = vProjTex.xy / vProjTex.w;
  35.   #endif        
  36.         
  37.         float3 eyeVec = normalize(CameraPos.xyz - vPos.xyz);
  38.         OUT.Tex2.xy = eyeVec.zz;
  39.  
  40.         OUT.Color = IN.Color;
  41.       }
  42.